/**
 * 横线转驼峰命名
 * @param {Object} str
 */
function camelize(str) {
	return str.replace(/-(\w)/g, function(_, c) {
		return c ? c.toUpperCase() : '';
	})
}
/**
 * './module' 要读取的目录
 * true 是否读取子目录
 * /\.vue$/ 匹配后缀为'.vue'的文件
 */
const files = require.context('./component', true, /\.vue$/)
export const keys = files.keys();
export const modules = keys.reduce((modules, path) => {
	// './app.vue' => 'app'
	const name = camelize(path.replace(/^\.\/|.vue$/g, ''));
	modules[name] = files(path).default;
	return modules;
}, {})

export default modules